package mlz.arr;

/*
2.数组元素反转
需求：某个数组有5个数据：10,20,30,40,50，请将这个数组中的数据进行反转。
[10, 20, 30, 40, 50] 反转后 [50, 40, 30, 20, 10]


需求分析：
    1.每次交换，需要有左右两边的两个下标，所以定义两个变量值（i 和 j）
        开始位置：i = 0 和 j = 数组的长度-1；
    2.每次让i 和 j下标位置的两个元素互换位置
        arr[i] 和 arr[j]进行互换位置
    3.每次互换完为止之后,让i往右边一位,让j往左边移动一位
 */
public class WorkDemo04 {
    public static void main(String[] args) {
        //1.准备一个数组
        int[] arr = {10, 20, 30, 40, 50};

        //2.定义一个循环,设置两个变量,一个在前一个在后
        for (int i= 0,j = arr.length-1; i < j; i++,j--) {
            //arr[i]  和 arr[j]
            //交换位置
            //定义一个临时变量记住后一个位置的值
            int temp = arr[j];//50
            //把前面一个位置的值赋值给后一个位置
            arr[j] = arr[i]; //10
            //把临时变量中的值赋值给前一个位置
            arr[i] = temp; //50
        }

        //输出数组
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + ",");
        }
    }
}
